/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  1.6                                   |
|   \\  /    A nd           | Web:      http://www.openfoam.org               |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version         2.0;
    format          ascii;
    class           dictionary;
    object          controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application     fireFoam;

startFrom       startTime;

startTime       0.0;

stopAt          endTime;

endTime         3.0; //30.0;

deltaT          0.001;

writeControl    adjustableRunTime;

writeInterval   0.2;

purgeWrite      0;

//writeFormat     ascii;
writeFormat     binary;

writePrecision  6;

writeCompression uncompressed;

timeFormat      general;

timePrecision   6;

graphFormat     raw;

runTimeModifiable yes;

adjustTimeStep  yes;

maxCo           5.0; //0.5;

maxDeltaT       0.1;

functions
(
    HRR
    {
        type            cellSource;
        functionObjectLibs ("libfieldFunctionObjects.so");
        enabled         true;
        outputControl   timeStep;  //outputTime;
        outputInterval  1;
        log             false;     //true;
        valueOutput     false;
        source          all;       //cellZone;
        sourceName      c0;
        operation       volIntegrate;
        fields
        (
            dQ
        );
    }

    fieldMimMax
    {
        type            fieldMinMax;
        functionObjectLibs ("libfieldFunctionObjects.so");
        enabled         true;
        outputControl   timeStep;
        outputInterval  1;
	mode            magnitude;
        log             false; //true;
        valueOutput     false;
        fields
        (
            CH4
	    O2
            H2O
            CO2
            N2
        );
    }

    patchSides 
    {
        type            faceSource;
        functionObjectLibs ("libfieldFunctionObjects.so");
        enabled         true;
        outputControl   timeStep;
        outputInterval  1;
        //outputControl   outputTime;
        log             true;
        valueOutput     false;
        source          patch;
        sourceName      sides;
        operation       sum;
        fields
        (
            phi
            HRR_fu
            phiH
            phiHs
            phiHc
        );
    }

    patchOutlet 
    {
        type            faceSource;
        functionObjectLibs ("libfieldFunctionObjects.so");
        enabled         true;
        outputControl   timeStep;
        outputInterval  1;
        //outputControl   outputTime;
        log             true;
        valueOutput     false;
        source          patch;
        sourceName      outlet;
        operation       sum;
        fields
        (
            phi
            HRR_fu
            phiH
            phiHs
            phiHc
        );
    }

    patchInlet 
    {
        type            faceSource;
        functionObjectLibs ("libfieldFunctionObjects.so");
        enabled         true;
        outputControl   timeStep;
        outputInterval  1;
        //outputControl   outputTime;
        log             true;
        valueOutput     false;
        source          patch;
        sourceName      inlet;
        operation       sum;
        fields
        (
            phi
            HRR_fu
            phiH
            phiHs
            phiHc
        );
    }

    zones
    {
        //functionObjectLibs ("libsurfaceIntegration.so");
        functionObjectLibs ("libfaceZonesIntegration.so");
        type faceZonesIntegration;
        enabled         true;
        outputControl   timeStep;
        outputInterval  1;
        faceZones
        (
            f1
            f2
            f3
            f4
            f5
            f6
            f7
            f8
            f9
            f10
            f11
            f12
            f13
            f14
            f15
            f16
            f17
            f18
            f19
            f20
            f21
            f22
            f23
            f24
            f25
            f26
            f27
            f28
            f29
            f30
            f31
            f32
            f33
            f34
            f35
            f36
            f37
            f38
            f39
        );
        fields
        (
            phi
            phiH
            phiHc
            phiHs
            phiFt
          //  phiFu
          //  phiOx
          //  phiPr
            HRR_fu
          //  HRR_pr
        );
    }

    fieldAverage1
    {
        type            fieldAverage;
        functionObjectLibs ( "libfieldFunctionObjects.so" );
        enabled         true;
        outputControl   outputTime;
        fields
        (
            T
            {
                mean        on;
                prime2Mean  on;
                base        time;
            }

            U
            {
                mean        on;
                prime2Mean  off;
                base        time;
            }

            ft
            {
                mean        on;
                prime2Mean  on;
                base        time;
            }

            dQ
            {
                mean        on;
                prime2Mean  off;
                base        time;
            }
        );
    }

);

// ************************************************************************* //
